import os
from PyPDF2 import PdfMerger
import datetime

def convert(pdf_path):
    print('\n获取的文件夹地址：', pdf_path)
    path = pdf_path  # pdf目录文件路径
    list_name = os.listdir(path)  # 获取所有文件名

    # 筛选出所有PDF文件
    pdf_lst = [filename for filename in list_name if filename.lower().endswith('.pdf')]

    # 如果找到了PDF文件，则继续处理
    if pdf_lst:
        pdf_full_paths = [os.path.join(path, filename) for filename in pdf_lst]

        file_merger = PdfMerger()
        for pdf in pdf_full_paths:
            file_merger.append(pdf)

        time = datetime.datetime.now().strftime('%Y%m%d_%H%M%S')  # 修改时间格式以避免文件名中的特殊字符
        after_dir = os.path.join(pdf_path, 'after')  # 设置输出目录
        after_name = os.path.join(after_dir, f'merged_{time}.pdf')  # 设置完整的输出文件路径和名称

        # 确保目标目录存在
        os.makedirs(after_dir, exist_ok=True)

        # 写入合并后的PDF文件
        with open(after_name, "wb") as error:
            file_merger.write(error)
        print(f'合并后的PDF已保存到：{after_name}')
    else:
        print('\n在选择的文件夹中没有找到PDF文件。')